home *** CD-ROM | disk | FTP | other *** search
- #include "khquerry.h"
- #include "khpxeerr.h"
-
- KH_QUERRY::KH_QUERRY(char** q, char** e,
- char* c, int numOfColumns)
- {
- int numQ = 0; // Number of querried fields
- querryNumbers = new int[255];
- querry = new KH_STRTABLE(0, NULL);
-
- for(int i = 0; i < numOfColumns; i++)
- if(q[i][0] != '\0')
- {
- querryNumbers[numQ] = i;
- querry->add(q[i]);
- numQ++;
- }
- querryNumbers[numQ] = -1;
-
- querryNumbers = (int*)realloc(querryNumbers, numQ * sizeof(int*) + 2);
-
- int numE = 0; // Number of querried fields
- exampleNumbers = new int[255];
- examples = new KH_STRTABLE(0, NULL);
- for(i = 0; i < numOfColumns; i++)
- if(e[i][0] != '\0')
- {
- exampleNumbers[numE] = i;
- examples->add(e[i]);
- numE++;
- }
- exampleNumbers[numE] = -1;
- exampleNumbers = (int*)realloc(exampleNumbers, numE * sizeof(int*) + 2);
-
- if(c != NULL)
- {
- int numC = 0; // Number of querried fields
- checkedFields = new int[255];
- for(int i = 0; i < numOfColumns; i++)
- if(c[i] != QFREE)
- {
- checkedFields[numC] = c[i];
- numC++;
- }
- checkedFields =
- (int*)realloc(checkedFields, numC * sizeof(int*) + 2);
- }
- else
- checkedFields = NULL;
- khPxErr = 0;
- }
- ////////////////////////////
- KH_QUERRY::~KH_QUERRY()
- {
- delete querry;
- delete examples;
- delete querryNumbers;
- delete exampleNumbers;
-
- delete checkedFields;
- }
-
-